 Imports System.Windows.Forms
 Public Class Nhanviendto
 Inherits AbstractDto 
 #Region "Các Thuộc Tính" 
 Private _MaNV as System.Int32
 Private _NVSP as System.String
 Private _TenNV as System.String
 Private _TenHT as System.String
 Private _Chucvu as System.Int32
 Private _Donvi as System.Int32
 Private _Quyen as System.Int32
 Private _CardNo as System.String
 Private _Ngaysinh as System.DateTime
 Private _Gioitinh as System.String
 Private _Diachi as System.String
 Private _CMND as System.String
 Private _Ngayvaolam as System.DateTime
 Private _Hinh as System.String
 Private _Trangthai as System.Int32
 Private _Ghichu as System.String
 #End Region 
 #Region "Khai báo các phương thức truy xuất" 
 Public Property MaNV() as System.Int32
 Get
 Return _MaNV
 End Get
 Set(ByVal value As System.Int32)
 _MaNV=Value
 End Set
 End Property
 Public Property NVSP() as System.String
 Get
 Return _NVSP
 End Get
 Set(ByVal value As System.String)
 _NVSP=Value
 End Set
 End Property
 Public Property TenNV() as System.String
 Get
 Return _TenNV
 End Get
 Set(ByVal value As System.String)
 _TenNV=Value
 End Set
 End Property
 Public Property TenHT() as System.String
 Get
 Return _TenHT
 End Get
 Set(ByVal value As System.String)
 _TenHT=Value
 End Set
 End Property
 Public Property Chucvu() as System.Int32
 Get
 Return _Chucvu
 End Get
 Set(ByVal value As System.Int32)
 _Chucvu=Value
 End Set
 End Property
 Public Property Donvi() as System.Int32
 Get
 Return _Donvi
 End Get
 Set(ByVal value As System.Int32)
 _Donvi=Value
 End Set
 End Property
 Public Property Quyen() as System.Int32
 Get
 Return _Quyen
 End Get
 Set(ByVal value As System.Int32)
 _Quyen=Value
 End Set
 End Property
 Public Property CardNo() as System.String
 Get
 Return _CardNo
 End Get
 Set(ByVal value As System.String)
 _CardNo=Value
 End Set
 End Property
 Public Property Ngaysinh() as System.DateTime
 Get
 Return _Ngaysinh
 End Get
 Set(ByVal value As System.DateTime)
 _Ngaysinh=Value
 End Set
 End Property
 Public Property Gioitinh() as System.String
 Get
 Return _Gioitinh
 End Get
 Set(ByVal value As System.String)
 _Gioitinh=Value
 End Set
 End Property
 Public Property Diachi() as System.String
 Get
 Return _Diachi
 End Get
 Set(ByVal value As System.String)
 _Diachi=Value
 End Set
 End Property
 Public Property CMND() as System.String
 Get
 Return _CMND
 End Get
 Set(ByVal value As System.String)
 _CMND=Value
 End Set
 End Property
 Public Property Ngayvaolam() as System.DateTime
 Get
 Return _Ngayvaolam
 End Get
 Set(ByVal value As System.DateTime)
 _Ngayvaolam=Value
 End Set
 End Property
 Public Property Hinh() as System.String
 Get
 Return _Hinh
 End Get
 Set(ByVal value As System.String)
 _Hinh=Value
 End Set
 End Property
 Public Property Trangthai() as System.Int32
 Get
 Return _Trangthai
 End Get
 Set(ByVal value As System.Int32)
 _Trangthai=Value
 End Set
 End Property
 Public Property Ghichu() as System.String
 Get
 Return _Ghichu
 End Get
 Set(ByVal value As System.String)
 _Ghichu=Value
 End Set
 End Property
 #End Region 
 Public Sub New()
MaNV = 0
NVSP = "
TenNV = "
TenHT = "
Chucvu = 0
Donvi = 0
Quyen = 0
CardNo = "
Ngaysinh = #1/1/1900#
Gioitinh = "
Diachi = "
CMND = "
Ngayvaolam = #1/1/1900#
Hinh = "
Trangthai = 0
Ghichu = "
 End Sub
 public Function HoTro(ByVal tencolumn As String) As String
 Select Case Ucase(Convert.ToString(tencolumn))
 Case Ucase("MaNV")
 if IsDBNull(MaNV)=true then 
 return "0"
 end if
 Return Convert.ToString(MaNV)
 Case Ucase("NVSP")
 if IsDBNull(NVSP)=true then 
 return """
 end if
 Return Convert.ToString(NVSP)
 Case Ucase("TenNV")
 if IsDBNull(TenNV)=true then 
 return """
 end if
 Return Convert.ToString(TenNV)
 Case Ucase("TenHT")
 if IsDBNull(TenHT)=true then 
 return """
 end if
 Return Convert.ToString(TenHT)
 Case Ucase("Chucvu")
 if IsDBNull(Chucvu)=true then 
 return "0"
 end if
 Return Convert.ToString(Chucvu)
 Case Ucase("Donvi")
 if IsDBNull(Donvi)=true then 
 return "0"
 end if
 Return Convert.ToString(Donvi)
 Case Ucase("Quyen")
 if IsDBNull(Quyen)=true then 
 return "0"
 end if
 Return Convert.ToString(Quyen)
 Case Ucase("CardNo")
 if IsDBNull(CardNo)=true then 
 return """
 end if
 Return Convert.ToString(CardNo)
 Case Ucase("Ngaysinh")
 if IsDBNull(Ngaysinh)=true then 
 return "#1/1/1900#"
 end if
 Return Convert.ToString(Ngaysinh)
 Case Ucase("Gioitinh")
 if IsDBNull(Gioitinh)=true then 
 return """
 end if
 Return Convert.ToString(Gioitinh)
 Case Ucase("Diachi")
 if IsDBNull(Diachi)=true then 
 return """
 end if
 Return Convert.ToString(Diachi)
 Case Ucase("CMND")
 if IsDBNull(CMND)=true then 
 return """
 end if
 Return Convert.ToString(CMND)
 Case Ucase("Ngayvaolam")
 if IsDBNull(Ngayvaolam)=true then 
 return "#1/1/1900#"
 end if
 Return Convert.ToString(Ngayvaolam)
 Case Ucase("Hinh")
 if IsDBNull(Hinh)=true then 
 return """
 end if
 Return Convert.ToString(Hinh)
 Case Ucase("Trangthai")
 if IsDBNull(Trangthai)=true then 
 return "0"
 end if
 Return Convert.ToString(Trangthai)
 Case Ucase("Ghichu")
 if IsDBNull(Ghichu)=true then 
 return """
 end if
 Return Convert.ToString(Ghichu)
 Case Else
 Return ""
 End Select
 End Function
 public function HoTro(ByVal tencolumn As String,Byval value as string,Optional ByVal TT As String = "sua") as string 
 Select Case Ucase(Convert.ToString(tencolumn))
 Case UCase("MaNV")
 If TT = "sua" Then
 If IsDBNull(value) = true Then
 return "Bạn chưa nhập dữ liệu"
 End if
 If value = ""  Then
 return "Bạn chưa nhập dữ liệu"
 End if
 If IsNumeric(value) = False Then
 return "Không phải số đề nghị nhập lại"
end if
MaNV=CInt(value)
End if
 Case UCase("NVSP")
 If IsDBNull(value) = true Then
 return "Bạn chưa nhập dữ liệu"
 End if
 If value = ""  Then
 return "Bạn chưa nhập dữ liệu"
 End if
NVSP=Convert.ToString(value)
 Case UCase("TenNV")
 If IsDBNull(value) = true Then
 return "Bạn chưa nhập dữ liệu"
 End if
 If value = ""  Then
 return "Bạn chưa nhập dữ liệu"
 End if
TenNV=Convert.ToString(value)
 Case UCase("TenHT")
 If IsDBNull(value) = true Then
 return "Bạn chưa nhập dữ liệu"
 End if
 If value = ""  Then
 return "Bạn chưa nhập dữ liệu"
 End if
TenHT=Convert.ToString(value)
 Case UCase("Chucvu")
 If IsDBNull(value) = true Then
 return "Bạn chưa nhập dữ liệu"
 End if
 If value = ""  Then
 return "Bạn chưa nhập dữ liệu"
 End if
 If IsNumeric(value) = False Then
 return "Không phải số đề nghị nhập lại"
end if
Chucvu=CInt(value)
 Case UCase("Donvi")
 If IsDBNull(value) = true Then
 return "Bạn chưa nhập dữ liệu"
 End if
 If value = ""  Then
 return "Bạn chưa nhập dữ liệu"
 End if
 If IsNumeric(value) = False Then
 return "Không phải số đề nghị nhập lại"
end if
Donvi=CInt(value)
 Case UCase("Quyen")
 If IsDBNull(value) = true Then
 return "Bạn chưa nhập dữ liệu"
 End if
 If value = ""  Then
 return "Bạn chưa nhập dữ liệu"
 End if
 If IsNumeric(value) = False Then
 return "Không phải số đề nghị nhập lại"
end if
Quyen=CInt(value)
 Case UCase("CardNo")
 If IsDBNull(value) = true Then
 return "Bạn chưa nhập dữ liệu"
 End if
 If value = ""  Then
 return "Bạn chưa nhập dữ liệu"
 End if
CardNo=Convert.ToString(value)
 Case UCase("Ngaysinh")
 If IsDBNull(value) = true Then
 return "Bạn chưa nhập dữ liệu"
 End if
 If value = ""  Then
 return "Bạn chưa nhập dữ liệu"
 End if
 If IsDate(value) = False Then
 return "Không phải ngày đề nghị nhập lại"
end if
Ngaysinh=Convert.ToDateTime(value)
 Case UCase("Gioitinh")
 If IsDBNull(value) = true Then
 return "Bạn chưa nhập dữ liệu"
 End if
 If value = ""  Then
 return "Bạn chưa nhập dữ liệu"
 End if
Gioitinh=Convert.ToString(value)
 Case UCase("Diachi")
 If IsDBNull(value) = true Then
 return "Bạn chưa nhập dữ liệu"
 End if
 If value = ""  Then
 return "Bạn chưa nhập dữ liệu"
 End if
Diachi=Convert.ToString(value)
 Case UCase("CMND")
 If IsDBNull(value) = true Then
 return "Bạn chưa nhập dữ liệu"
 End if
 If value = ""  Then
 return "Bạn chưa nhập dữ liệu"
 End if
CMND=Convert.ToString(value)
 Case UCase("Ngayvaolam")
 If IsDBNull(value) = true Then
 return "Bạn chưa nhập dữ liệu"
 End if
 If value = ""  Then
 return "Bạn chưa nhập dữ liệu"
 End if
 If IsDate(value) = False Then
 return "Không phải ngày đề nghị nhập lại"
end if
Ngayvaolam=Convert.ToDateTime(value)
 Case UCase("Hinh")
 If IsDBNull(value) = true Then
 return "Bạn chưa nhập dữ liệu"
 End if
 If value = ""  Then
 return "Bạn chưa nhập dữ liệu"
 End if
Hinh=Convert.ToString(value)
 Case UCase("Trangthai")
 If IsDBNull(value) = true Then
 return "Bạn chưa nhập dữ liệu"
 End if
 If value = ""  Then
 return "Bạn chưa nhập dữ liệu"
 End if
 If IsNumeric(value) = False Then
 return "Không phải số đề nghị nhập lại"
end if
Trangthai=CInt(value)
 Case UCase("Ghichu")
 If IsDBNull(value) = true Then
 return "Bạn chưa nhập dữ liệu"
 End if
 If value = ""  Then
 return "Bạn chưa nhập dữ liệu"
 End if
Ghichu=Convert.ToString(value)
 Case Else
 return ""
 End Select
 return ""
 End function
 Public Sub GANgiatri(ByVal Group As Control)
 Dim ValControl As New Control
 For Each ValControl In Group.Controls
 If ValControl.Visible = True Then
 Dim str As String = Me.HoTro(UCase(Mid(ValControl.Name, 4)))
 If str <> " Then
 If TypeOf (ValControl) Is TextBox Or TypeOf (ValControl) Is Label Then
 ValControl.Text = Str
 ElseIf TypeOf (ValControl) Is NumericUpDown Then
 Dim NUD As NumericUpDown = ValControl
 NUD.Value = Str
 ElseIf TypeOf (ValControl) Is DateTimePicker Then
 Dim DTP As DateTimePicker = ValControl
 DTP.Value = Str
 ElseIf TypeOf (ValControl) Is ComboBox Then
 Dim cbo As ComboBox = ValControl
 cbo.SelectedValue = Str
 ElseIf TypeOf (ValControl) Is PictureBox Then
 Dim pic As PictureBox = ValControl
 pic.ImageLocation = Str
 End If
 End If
 If ValControl.Controls.Count > 0 Then GANgiatri(ValControl)
 End If
 Next
 End Sub
 Public Sub NHANgiatri(ByVal Group As Control, ByVal ErrorProvider1 As ErrorProvider)
 Dim ValControl As New Control
 Dim loi As String = "
 For Each ValControl In Group.Controls
 If ValControl.Visible = True Then
 If TypeOf (ValControl) Is TextBox Or TypeOf (ValControl) Is Label Then
 loi = Me.HoTro(UCase(Mid(ValControl.Name, 4)), ValControl.Text)
 ElseIf TypeOf (ValControl) Is ComboBox Then
 Dim cbo As ComboBox = ValControl
 loi = Me.HoTro(UCase(Mid(cbo.Name, 4)), cbo.SelectedValue)
 ElseIf TypeOf (ValControl) Is NumericUpDown Then
 Dim NUD As NumericUpDown = ValControl
 loi = Me.HoTro(UCase(Mid(ValControl.Name, 4)), NUD.Value)
 ElseIf TypeOf (ValControl) Is DateTimePicker Then
 Dim dtp As DateTimePicker = ValControl
 loi = Me.HoTro(UCase(Mid(ValControl.Name, 4)), dtp.Value)
 ElseIf TypeOf (ValControl) Is PictureBox Then
 Dim pic As PictureBox = ValControl
 loi = Me.HoTro(UCase(Mid(ValControl.Name, 4)), pic.ImageLocation)
 End If
 If loi <> " Then
 ValControl.Focus()
 End If
 ErrorProvider1.SetError(ValControl, loi)
 If ValControl.Controls.Count > 0 Then NHANgiatri(ValControl, ErrorProvider1)
 End If
 Next
 End Sub
 End class
